Screaming Colors: A Swiftie Guide to Eras Tour Stats

This whole analysis started with a Swiftie curiosity over the selection of surprise songs’ dresses colors and if they reflected the mood being sang in said songs. This then raised the question of which possible meaning that colors might have in the Swiftverse. Where do we even start analyzing that?

What followed was months of metadata being added to songs; identifying every single time Swift mentions color and what they mean (it turns out, 45% of her songs mention color!); decision over which package to use to tokenize song’s moods and rate them on a scale of most negative to most positive; which led to another question: would lore collected by a long-time fan be more meaningful to identify the song’s meaning over an automated dictionary-based approach?

One might say this Swiftie fell in a rabbit hole, or is walking down Clown-elia Street again, but with Eras Tour ending and no signal of Debut (TV) or Reputation (TV) being released, there was some considerable amount of time that could be dedicated to this silly and fun passion project. 🤓

Lore Data Set

The allSongsMetadata data set includes the fan lore: sentiment, message, keywords, muse, color meaning, notes, secret messages, color mentions and their meanings (between positive, neutral or negative). The sentiments were chosen from a list of feelings compiled by the Hoffman Institute Foundation (May/2015 review). Soon it was realized that a single sentiment was not enough to completely differentiate between songs and the message and keywords were also created to add more information to single out a song. For example, while “Tim McGraw” and “Back to December” both have the overall “nostalgic” feeling, the first carries a “falling in love” message, while the latter is about “longing”. Likewise, “Tim McGraw” keywords are “romantic, first love, country music”, while “Back to December” keywords are “breakup, regretful, heartbreak”.

This is what the data set looks like:

Note: the column “lyrics” was ommited as it contains the whole lyrics of each song, making its visualization messy in this Read me file.

## Data Set Overview:
## - Total number of songs: 241
## - Number of variables: 40
## - Column names: album_name, ep, album_release, track_number, track_name, sentiment_MK, message_MK, keywords_MK, Column1, muse_MK, colour_lyric_MK, colour_meaningMK, colour_MK, notes_MK, secret_message_MK, artist, featuring, bonus_track, promotional_release, single_release, track_release, danceability, energy, key, loudness, mode, speechiness, acousticness, instrumentalness, liveness, valence, tempo, time_signature, duration_ms, explicit, key_name, mode_name, key_mode, lyrics, normalized_song_name
Sample of Taylor Swift Songs Metadata
album_name ep album_release track_number track_name sentiment_MK message_MK keywords_MK Column1 muse_MK colour_lyric_MK colour_meaningMK colour_MK notes_MK secret_message_MK artist featuring bonus_track promotional_release single_release track_release danceability energy key loudness mode speechiness acousticness instrumentalness liveness valence tempo time_signature duration_ms explicit key_name mode_name key_mode normalized_song_name
evermore FALSE 2020-12-11 13 marjorie longing legacy rembembrance, family, hearfelt 3 Marjorie Finlay you loved the amber skies so much neutral amber NA NA Taylor Swift NA FALSE NA NA 2020-12-11 0.535 0.561 5 -11.609 1 0.0484 0.876 1.36e-04 0.115 0.287 96.103 4 257773 FALSE F major F major marjorie
Midnights FALSE 2022-10-21 4 Snow On The Beach peaceful wondering surreal, unexpected love, rarity 3 NA I searched aurora borealis green positive aurora borealis green NA NA Taylor Swift Lana Del Rey FALSE NA NA 2022-10-21 0.663 0.321 9 -13.527 1 0.0409 0.701 5.98e-04 0.107 0.153 110.021 4 256124 TRUE A major A major snow on the beach
Midnights FALSE 2022-10-21 22 Snow On The Beach (More Lana Del Rey) peaceful wondering surreal, unexpected love, rarity 3 NA I searched aurora borealis green positive aurora borealis green NA NA Taylor Swift Lana Del Rey TRUE NA NA 2023-05-26 0.664 0.399 6 -10.997 0 0.0349 0.797 3.10e-06 0.105 0.265 109.937 4 229943 TRUE F# minor F# minor snow on the beach more lana del rey
THE TORTURED POETS DEPARTMENT FALSE 2024-04-19 17 The Black Dog sad heartbroken long relationship, breakup, goodbye, farewell, resentment, anxiety, grief 7 Joe Alwyn and so I watch as you walk into some bar called The Black Dog; how you don’t miss me in The Black Dog; and I hope it’s shitty in The Black Dog negative black NA NA Taylor Swift NA TRUE NA NA 2024-04-19 0.527 0.270 0 -10.855 1 0.0380 0.707 0.00e+00 0.102 0.230 154.042 4 238857 TRUE C major C major the black dog
folklore FALSE 2020-07-24 2 cardigan melancholic first love comfort, youth, love triangle, secrecy, forbidden love, storytelling 6 fictional sequined smile, black lipstick, sensual politics neutral black part of the trilogy august, cardigan and illicit affairs NA Taylor Swift NA FALSE NA 2020-07-27 2020-07-24 0.612 0.580 0 -8.572 0 0.0419 0.525 4.14e-04 0.260 0.534 130.045 4 239560 FALSE C minor C minor cardigan
THE TORTURED POETS DEPARTMENT FALSE 2024-04-19 12 loml sad heartbroken long relationship, breakup, goodbye, farewell, resentment, anxiety, grief 7 Joe Alwyn you cinephile in black and white, all those plot twists and dynamite neutral black and white NA NA Taylor Swift NA FALSE NA NA 2024-04-19 0.423 0.272 0 -12.560 1 0.0489 0.858 0.00e+00 0.108 0.195 78.539 3 277157 TRUE C major C major loml

Surprise Songs Data Set

Parallel to the development of the metadata (aka lore) database, a few details about each surprise song performance were noted down in the surpriseSongsDressColours data set. Each concert had a few rows, one per surprise song (Taylor performed two surprise songs in each of the concerts, the first one on the guitar and the second one on the piano). Besides the two regular surprise songs, she occasionally started mashing up songs in this acoustic set; although the first mashup happened in her second night in Ohio (July 1st, 2023), they became more common from the second night of her Melbourne concert (February 17th, 2024). Thus, three columns account for it: Mashups, with the options none, one or two; Mashup, with the name of the first song mashed up with Song title; and, Mashup2, with yet a third song that was mashed up with Song title and Mashup (in the case of Mashups = Two).

Besides the song titles and mashups, the surprise songs data set includes the names of the city, state, country, stadium and dates in which she performed. Moreover, the name of the dress she was wearing is included in the column DressName, and its color in descriptive terms is found on Colour1, its HEX formatting on ColourHex1, and its RGB formatting on ColourRGB1. As some dresses like “Flamingo pink” and “Sunset orange” are made up of an ombre of two colors, their name and codes are also found on Colour2, ColourHex2 and ColourRGB2. Lastly, other details are also included: who she was dating at the time in the Relationship column; which leg of the tour (First legs, European, Final leg), which night on that city, which instrument she played while singing said song, special guests in the audience, and notes for overall remarks such as: “on July 9th, she sang Last Kiss as one the surprise songs, and that date is mentioned on the song”.

This is what the data looks like:

## Data Set Overview:
## - Total number of surprise songs: 443
## - Number of variables: 26
## - Column names: Song title, Mashups, Mashup, Mashup2, Guest, City, State, Country, Stadium, Date, DressName, Legs, Relationship, Start, End, Colour1, ColourHex1, ColourRGB1, Colour2, ColourHex2, ColourRGB2, Night #, Order, Instrument, Special Annoucement, Notes
Sample of all Eras Tour Surprise Songs
Song title Mashups Mashup Mashup2 Guest City State Country Stadium Date DressName Legs Relationship Start End Colour1 ColourHex1 ColourRGB1 Colour2 ColourHex2 ColourRGB2 Night # Order Instrument Special Annoucement Notes
Maroon One NA NA NA Vancouver British Columbia Canada BC Place 2024-12-07 Blurple Final leg Travis Kelce 2024-12-07 2024-12-07 Blueberry blue #433ea9 rgb(67,62,169) Amethyst purple #463097 rgba(70,48,151,255) 2 2 Piano NA NA
A Place in This World One New Romantics NA NA Vancouver British Columbia Canada BC Place 2024-12-08 Blurple Final leg Travis Kelce 2024-12-08 2024-12-08 Blueberry blue #433ea9 rgb(67,62,169) Amethyst purple #463097 rgba(70,48,151,255) 3 1 Guitar NA NA
Long Live Two New Year’s Day The Manuscript NA Vancouver British Columbia Canada BC Place 2024-12-08 Blurple Final leg Travis Kelce 2024-12-08 2024-12-08 Blueberry blue #433ea9 rgb(67,62,169) Amethyst purple #463097 rgba(70,48,151,255) 3 2 Piano NA NA
New Romantics One NA NA NA Vancouver British Columbia Canada BC Place 2024-12-08 Blurple Final leg Travis Kelce 2024-12-08 2024-12-08 Blueberry blue #433ea9 rgb(67,62,169) Amethyst purple #463097 rgba(70,48,151,255) 3 1 Guitar NA NA
New Year’s Day Two NA NA NA Vancouver British Columbia Canada BC Place 2024-12-08 Blurple Final leg Travis Kelce 2024-12-08 2024-12-08 Blueberry blue #433ea9 rgb(67,62,169) Amethyst purple #463097 rgba(70,48,151,255) 3 2 Piano NA NA
The Manuscript Two NA NA NA Vancouver British Columbia Canada BC Place 2024-12-08 Blurple Final leg Travis Kelce 2024-12-08 2024-12-08 Blueberry blue #433ea9 rgb(67,62,169) Amethyst purple #463097 rgba(70,48,151,255) 3 2 Piano NA NA

We Never Get Out of Style: An overview of surprise song dresses across the whole tour

Looking at it now, it all seems so simple: the addition of new dresses throughout different tour legs expanded the color spectrum of the surprise songs setlist, although the original colors remained most prevalent overall. Tallying the surprise song outfits revealed a dominance of Pink, worn for around 20% of performances (i.e., 29 out of the 147 concerts). Coming in second was Yellow (~16%) followed by Green and Sunset Orange (~14% each). Finally the rare, yet memorable, Popsicle, Cotton Candy, and Grapefruit outfits were each worn for ~ 2-3% of surprise song performances.

This wasn’t just a random mix of colors. While the first three legs of the tour had only four original colors to pick from, European fans got their own special colors that weren’t seen anywhere else. Then, the final North American shows had their own unique colors, too. Taylor seemed to have favorite colors for each part of the world she visited. But, here’s the interesting part: did she pick dress colors completely randomly every night, or was there some kind of pattern? You looked at the data, and during the first part of the tour, it really was random. The color she wore one night had absolutely nothing to do with what she’d wear the next night. To describe it in her own terms, devils roll the dice, angels roll their eyes – it was pure chance, with no way to predict what would come next.

But people are people and sometimes we change our minds, and that’s what happened when she got to Europe! Suddenly, the previous night’s dress color actually gave fans hints about what she’d wear next. The pattern wasn’t super strong, but it was definitely there: if she wore Flamingo Pink one night, she would likely wear Sunset Orange on the following night and Ocean Blue on the third night, then rinse and repeat. Then, when Taylor came back to North America for the final shows, we watched it begin again. There was no pattern to guess from anymore, as if by the end of the tour, they just went with whatever felt right for each night instead of following a particular system.

# Include Markov-Chain stats

I told you I was a mastermind: does the dress colour predict the mood of the surprise song?

The dress colors might seem random, but as a dedicated Swiftie who’s spotted countless easter eggs over the years, you can’t help but wonder if there’s a connection between the dress colors and the mood of the songs she performed while wearing them. To figure this out, you create a “Swift Dictionary of Colors”. Across all 242 songs Taylor has released, nearly half (110, 45%) mention colors in their lyrics, adding up to 180 individual references in total. To you, this clearly means colors have a special importance in her linguistic abilities. While examining these lyrics, you notice that colors can have very different meanings in her songs. Take “blue” for example - it can be negative (“we’re so sad, we paint the town blue”), neutral (“drowning in the Blue Nile, he sent me ‘Downtown Lights’”), or positive (“clear blue water, high tide came and brought you in”).

To measure the emotional feel of every color, you give each mention a simple score: +1 for positive feelings (love, happiness, hope), 0 for neutral emotions (descriptive, but no feeling linked), and -1 for negative emotions (sadness, anger, heartbreak). Then you group similar shades together - “Greens” includes everything from “aurora borealis green”, to “teal”.

What you discover is fascinating! Green was the color of the grass where she used to read at Centennial Park, and it also turned out to be her most positive color family (scoring 0.57), followed closely by general colorful terms (0.56) and purples (0.40). On the flip side, whites were surprisingly negative (-0.41), even more so than blues (-0.11), which were predictably sad. This creates an emotional color gradient in her songwriting where greens and yellows consistently represent hope and renewal, while whites carried the most negative connotations. Perhaps most interesting was how Taylor uses red - it scored almost neutral (-0.05), showing she uses this color to express both passion and pain equally. In her lyrics, “loving him was red” represents a positive emotional intensity, while maroon shades take on a more negative tone with lyrics like “will that make your memory fade from this scarlet maroon like it never happened?” She truly showed us colors she knows we can’t see with anyone else.

# Charlotte's pretty bubble plot goes here

Hits different: but how does one define the sentiment of a song?

This analysis explores the emotional spectrum of Taylor Swift’s discography by analyzing the sentiment of individual words in her lyrics using the Bing sentiment dictionary.

Text Processing and Tokenization

The first step involves breaking down song lyrics into individual words (tokens) and cleaning the data for meaningful analysis.

## Total words after cleaning: 40907
## Unique words: 4567

Sentiment Scoring

Using the Bing sentiment dictionary, each word is classified as either positive or negative, then aggregated by song to create net sentiment scores.

## Sentiment word distribution:
## # A tibble: 2 × 3
##   sentiment     n percentage
##   <chr>     <int>      <dbl>
## 1 negative   2948       47.4
## 2 positive   3266       52.6

Visualization: Emotional Spectrum Across Albums

The following interactive chart shows the net sentiment score for each track based on their lyrics:

Key Insights

## Most positive song: This Love (Taylor's Version) from 5 (Score: 52 )
## Most negative song: Shake It Off (Taylor's Version) from 5 (Score: -110 )

Note: This analysis uses automated sentiment scoring (with the aid of the tidytext package) based on individual word classifications and the bing dictionary. The complexity of songs may not be fully captured by this dictionary-based approach, as context and metaphors can influence the true sentiment beyond individual word meanings.

Word Contribution in the Lyrics Analysis

Understanding which specific lyrics drive the sentiment scores helps reveal the emotional vocabulary in Taylor’s music.

A Fan Perspective: Sentiment Analysis Using Curated Lore

While automated lyrical analysis provides one lens, the Swiftie community has developed rich interpretations of song meanings over the years. This section analyzes sentiment using manually curated metadata including fan-identified keywords, themes, and emotional interpretations.

Note: only one fan added information to build the metadata.

Methodology: Balancing Fan Insights

To ensure fair comparison across songs, the analysis uses a sampling approach to balance the varying amounts of metadata available for different tracks.

## Minimum keywords per song: 1
## This ensures balanced representation across all tracks.
## Total metadata terms processed: 723
## Unique metadata terms: 245

Sentiment Scoring of Fan Metadata

## Fan metadata sentiment distribution:
## # A tibble: 2 × 3
##   sentiment     n percentage
##   <chr>     <int>      <dbl>
## 1 negative    206       60.8
## 2 positive    133       39.2

Visualization: Emotional Spectrum Through Fan Lens

The following interactive chart shows the net sentiment score for each track based on fan lore:

Word Contribution in the Lore Analysis

Understanding which specific terms drive the sentiment scores helps reveal the emotional vocabulary that fans associate with Taylor’s music.

Comparative Insights: Lyrics vs Lore Analysis

## FAN PERSPECTIVE INSIGHTS:
## Most positive song: Change (Taylor's Version) from 2 (Score: 3 )
## Most negative song: A Perfectly Good Heart from 1 (Score: -3 )
## Album rankings by fan-perceived sentiment:
## 1 . 7 (Avg: 0.53 )
## 2 . 3 (Avg: 0.11 )
## 3 . 10 (Avg: 0 )
## 4 . 5 (Avg: -0.14 )
## 5 . 1 (Avg: -0.33 )
## 6 . 2 (Avg: -0.41 )
## 7 . 9 (Avg: -0.5 )
## 8 . 4 (Avg: -0.56 )
## 9 . 8 (Avg: -1.17 )
## 10 . 11 (Avg: -1.19 )
## 
##  TOP SENTIMENT DRIVERS:
## Most frequent positive terms: playful, hopeful, warm, passionate, peaceful
## Most frequent negative terms: breakup, defiant, desperate, vulnerable, betrayal, longing, vengeful

The fan perspective offers a valuable complement to automated lyrical analysis, highlighting how community interpretation shapes our understanding of artistic emotional content. It is worth noting that this is the perspective of a single, however long-term, fan.

Taylor Swift Sentiment Analysis: Lyrics vs Lore

This analysis compares sentiment scores between Taylor Swift’s song lyrics and their associated lore/metadata to identify the biggest differences between how songs are perceived through their lyrics versus their background stories.

Data Preparation

First, we’ll aggregate sentiment scores for each song from both the metadata (lore) and lyrics datasets.

# Convert sentiment to numeric values for aggregation
taylorMetadata <- taylorMetadata %>%
  mutate(sentimentNumber = if_else(sentiment == "positive", 1, -1))

# Aggregate metadata sentiment scores by song
metadataSentimentScores <- taylorMetadata %>%
  group_by(track_number, album_name, track_name) %>%
  summarize(metadata_sentiment_score = mean(sentimentNumber, na.rm = TRUE))
## `summarise()` has grouped output by 'track_number', 'album_name'. You can
## override using the `.groups` argument.
# Convert lyrics sentiment to numeric and aggregate
taylorLyrics <- taylorLyrics %>%
  mutate(sentimentNumber = if_else(sentiment == "positive", 1, -1))

lyricsSentimentScores <- taylorLyrics %>%
  group_by(track_number, album_name, track_name) %>%
  summarize(lyrics_sentiment_score = mean(sentimentNumber, na.rm = TRUE))
## `summarise()` has grouped output by 'track_number', 'album_name'. You can
## override using the `.groups` argument.

Combining and Analyzing Differences

Next, we’ll combine the data sets and calculate the absolute difference between lyrics and lore sentiment scores.

# Combine the aggregated scores into one dataset
combinedSentiments <- metadataSentimentScores %>%
  inner_join(lyricsSentimentScores, by = c("track_number", "album_name", "track_name"))

# Calculate the absolute difference between metadata and lyrics sentiment scores
combinedSentiments <- combinedSentiments %>%
  mutate(difference = abs(metadata_sentiment_score - lyrics_sentiment_score))

# Correlation analysis
correlation <- cor(combinedSentiments$metadata_sentiment_score, combinedSentiments$lyrics_sentiment_score, use = "complete.obs")

# Identify outliers (songs with difference > 0.5)
outliers <- combinedSentiments %>%
  filter(difference > 0.5)

# Print results
print(paste("Correlation between Metadata and Lyrics Sentiment Scores:", 
            round(correlation, 2)))
## [1] "Correlation between Metadata and Lyrics Sentiment Scores: 0.29"
print("Outliers:")
## [1] "Outliers:"
print(outliers)
## # A tibble: 147 × 6
## # Groups:   track_number, album_name [145]
##    track_number album_name                    track_name  metadata_sentiment_s…¹
##           <dbl> <fct>                         <chr>                        <dbl>
##  1            1 Speak Now (Taylor's Version)  Mine (Tayl…                      1
##  2            1 Lover                         I Forgot T…                      1
##  3            1 evermore                      willow                           1
##  4            1 Midnights                     Lavender H…                      0
##  5            1 THE TORTURED POETS DEPARTMENT Fortnight                       -1
##  6            2 Speak Now (Taylor's Version)  Sparks Fly…                      1
##  7            2 evermore                      champagne …                     -1
##  8            2 THE TORTURED POETS DEPARTMENT The Tortur…                     -1
##  9            3 Fearless (Taylor's Version)   Love Story…                      1
## 10            3 Speak Now (Taylor's Version)  Back To De…                     -1
## # ℹ 137 more rows
## # ℹ abbreviated name: ¹​metadata_sentiment_score
## # ℹ 2 more variables: lyrics_sentiment_score <dbl>, difference <dbl>

Top 10 Songs with Largest Sentiment Differences

Let’s identify and visualize the songs where lyrics and lore sentiment differ the most.

# Get top 20 songs with largest sentiment differences
top_20_differences <- combinedSentiments %>%
  arrange(desc(difference)) %>%
  head(20)

Visualization

This visualization shows the sentiment scores for both lyrics and lore analysis, with connecting lines to highlight the differences.

# Create the plot with shape-based legend
ggplot(top_20_differences) +
  # Connecting lines between lyrics and metadata scores
  geom_segment(aes(x = lyrics_sentiment_score,
                   xend = metadata_sentiment_score,
                   y = reorder(track_name, difference),
                   yend = reorder(track_name, difference),
                   color = album_name),
               size = 1.5, alpha = 0.7) +
  
  # Lyrics points (squares) - map to shape aesthetic for legend
  geom_point(aes(x = lyrics_sentiment_score,
                 y = reorder(track_name, difference),
                 color = album_name,
                 shape = "Lyrics"),  # Map to shape aesthetic
             size = 4, alpha = 0.8) +
  
  # Metadata/Lore points (triangles) - map to shape aesthetic for legend
  geom_point(aes(x = metadata_sentiment_score,
                 y = reorder(track_name, difference),
                 color = album_name,
                 shape = "Lore"),  # Map to shape aesthetic
             size = 4, alpha = 0.8) +
  
  # Define the shapes manually
  scale_shape_manual(
    name = "Sentiment Source",
    values = c("Lyrics" = 15, "Lore" = 17),  # 15 = square, 17 = triangle
    guide = guide_legend(
      override.aes = list(color = "black", size = 4),  # Force legend to be black
      order = 1  # Put shape legend first
    )
  ) +
  
  # Keep album colors for the connecting lines and points
  scale_color_manual(
    name = "Album",
    values = colorPaletteAlbums,
    guide = guide_legend(order = 2)  # Put color legend second
  ) +
  
  labs(
    title = "Top 20 Songs with Largest Sentiment Differences",
    x = "", 
    y = NULL,
    caption = ""
  ) +
  
  theme_minimal() +
  theme(
    plot.title = element_text(hjust = 0.5, size = 14, face = "bold"),
    plot.subtitle = element_text(hjust = 0.5, size = 12, color = "gray30"),
    plot.caption = element_text(hjust = 0.5, size = 10, color = "gray50"),
    axis.text.y = element_text(size = 14),
    axis.title.x = element_text(size = 14, face = "bold"),
    legend.position = "right",
    panel.grid.major.y = element_blank(),
    panel.grid.minor = element_blank(),
    # Adjust legend spacing
    legend.box = "vertical",
    legend.margin = margin(t = 0, r = 0, b = 0, l = 10)
  ) 

Key Insights From The Lyrics x Lore Discrepancies

The visualization uses connecting lines to show the gap between lyrics sentiment (square points) and lore sentiment (triangle points), with longer lines indicating larger differences.

From our earlier “Swift’s Emotional Lexicon” analysis, we learned that “shake” is classified as a negative word in the Bing sentiment dictionary and ranks as the second most common negative word in Taylor’s corpus. This explains why the song “Shake It Off,” where “shake” appears 36 times, registers as highly negative in lyrics analysis despite being an upbeat anthem about resilience, creating the largest discrepancy in our dataset.

Another key insight from this visualization is that 15 out of the 20 songs (75%) show lore sentiment being more negative than lyrics sentiment, while only 5 songs show the reverse pattern. This suggests that Taylor employs figures of speech in her songwritting, in which darker themes are “wrapped” in brigther linguistic packaging.

Moreover, we can see some temporal distribution: 16 out of 20 songs (80%) come from Taylor’s first five albums (Taylor Swift through 1989), with only 4 from her later work (Reputation through TTPD). This stark imbalance suggests an evolution in her songwriting approach across career phases.

These findings suggest Taylor’s early career was characterized by more complex emotional layering, such as using seemingly positive or neutral language to convey deeper melancholy or using metaphorical language that masked the true emotional weight of her experiences. This likely reflects both her youth and the unique pressures she must have faced as a teenager in the spotlight.

When we also take into account the context of her early career, this pattern feels compelling. Her debut album was released when she was only 16, and during this first part of her career, her personal relationships were heavily dissected in the media with some of her avail. This was the era she would also leave secret messages in her lyrics books hinting at who each song was written for, which does match this lyrical tendency of encrypting what she actually means.

The shift towards more direct expression in her later work, particularly after the very traumatic Snakegate, may reflect both artistic maturation and a conscious response to years of invasive media attention. It feels paradoxal, but perhaps by experiencing the consequences of transparency, she might have developed a more protective approach to her private life while becoming more emotionally direct in her lyrics. Upon the release of Reputation, her first album after snakegate, she announced she would not be interviewed by anyone with her infamous quote “There will be no further explanation. There will just be Reputation”.

Her recent work features less emotional camouflage, with the surface-level sentiment of her words aligning more with the underlying emotional narrative, suggesting she has found ways to show her vulnerability in her art without sacrificing her privacy.

Additional reading:

Repetition in Taylor Swift Discography: https://www.reddit.com/r/TaylorSwift/comments/17linx2/taylor_swift_songs_ordered_by_how_many_times_the/

Snakegate timeline: https://www.cosmopolitan.com/uk/entertainment/news/a41965/taylor-swift-kanye-west-feud-timeline/

What would Taylor discography be like if snakegate didn’t happen? https://www.reddit.com/r/TaylorSwift/comments/192w7pv/what_would_taylors_6th_album_be_if_it_wasnt_for/